home *** CD-ROM | disk | FTP | other *** search
/ InterCD 2000 December / december_2000.iso / Intercd / root / Multimedia / audio / ^NoiseTracker / NtkSourceCode / 303guicode.cpp next >
Encoding:
Text File  |  2000-01-29  |  8.0 KB  |  223 lines

  1.  
  2. // 303 handling gui source code
  3.  
  4. if(userscreen==9)
  5. {
  6.     // Step Forward
  7.     if (zcheckMouse(481,424,22,14))
  8.     {
  9.     tbEditStep++;
  10.     if(tbEditStep>15)tbEditStep=0;
  11.     gui_action=73;
  12.     teac=0;
  13.     }
  14.  
  15.     // Step Back
  16.     if (zcheckMouse(484,396,15,8))
  17.     {
  18.     if(tbEditStep==0)
  19.     tbEditStep=15;
  20.     else
  21.     tbEditStep--;
  22.     teac=0;
  23.     gui_action=73;
  24.     }
  25.  
  26.     // Pattern Steps +1
  27.     if (zcheckMouse(137,427,11,9) && tb303[sl3].patternlength[tb303[sl3].selectedpattern]<16)
  28.     {
  29.     tb303[sl3].patternlength[tb303[sl3].selectedpattern]++;
  30.     gui_action=73;
  31.     teac=1;
  32.     }
  33.     
  34.     // Pattern Steps -1
  35.     if (zcheckMouse(137,436,11,9) && tb303[sl3].patternlength[tb303[sl3].selectedpattern]>1)
  36.     {
  37.     tb303[sl3].patternlength[tb303[sl3].selectedpattern]--;
  38.     gui_action=73;
  39.     teac=1;
  40.     }
  41.  
  42.  
  43.     // Pause/Note button
  44.     if (zcheckMouse(450,392,15,8))
  45.     {
  46.         if(tb303[sl3].flag[tb303[sl3].selectedpattern][tbEditStep].pause)
  47.         tb303[sl3].flag[tb303[sl3].selectedpattern][tbEditStep].pause=0;
  48.         else
  49.         tb303[sl3].flag[tb303[sl3].selectedpattern][tbEditStep].pause=1;
  50.         teac=10;
  51.         gui_action=73;
  52.     }
  53.  
  54.     // Glide button
  55.     if (zcheckMouse(454,422,8,15))
  56.     {
  57.         if(tb303[sl3].flag[tb303[sl3].selectedpattern][tbEditStep].slide_flag)
  58.         tb303[sl3].flag[tb303[sl3].selectedpattern][tbEditStep].slide_flag=0;
  59.         else
  60.         tb303[sl3].flag[tb303[sl3].selectedpattern][tbEditStep].slide_flag=1;
  61.         teac=11;
  62.         gui_action=73;
  63.     }
  64.  
  65.     // Accent button
  66.     if (zcheckMouse(429,422,8,15))
  67.     {
  68.         if(tb303[sl3].flag[tb303[sl3].selectedpattern][tbEditStep].accent_flag)
  69.         tb303[sl3].flag[tb303[sl3].selectedpattern][tbEditStep].accent_flag=0;
  70.         else
  71.         tb303[sl3].flag[tb303[sl3].selectedpattern][tbEditStep].accent_flag=1;
  72.         
  73.         teac=12;
  74.         gui_action=73;
  75.     }
  76.  
  77.     // Transpose up button
  78.     if (zcheckMouse(405,422,8,15))
  79.     {
  80.         if(tb303[sl3].flag[tb303[sl3].selectedpattern][tbEditStep].transposeup_flag)
  81.         tb303[sl3].flag[tb303[sl3].selectedpattern][tbEditStep].transposeup_flag=0;
  82.         else
  83.         tb303[sl3].flag[tb303[sl3].selectedpattern][tbEditStep].transposeup_flag=1;
  84.  
  85.         teac=13;
  86.         gui_action=73;
  87.     }
  88.  
  89.     // Transpose down button
  90.     if (zcheckMouse(380,422,8,15))
  91.     {
  92.         if(tb303[sl3].flag[tb303[sl3].selectedpattern][tbEditStep].transposedown_flag)
  93.         tb303[sl3].flag[tb303[sl3].selectedpattern][tbEditStep].transposedown_flag=0;
  94.         else
  95.         tb303[sl3].flag[tb303[sl3].selectedpattern][tbEditStep].transposedown_flag=1;
  96.  
  97.         teac=14;
  98.         gui_action=73;
  99.     }
  100.  
  101.     // Sawtooth switching
  102.     if (zcheckMouse(181,345,6,7))
  103.     {
  104.         tb303[sl3].waveform=0;
  105.         gui_action=73;
  106.         teac=2;
  107.     }
  108.  
  109.     // Square switching
  110.     if (zcheckMouse(187,345,6,7))
  111.     {
  112.         tb303[sl3].waveform=1;
  113.         gui_action=73;
  114.         teac=2;    
  115.     }
  116.  
  117.     // NoteOn/Off buttons
  118.  
  119.     if (zcheckMouse(207,422,8,15)){tb303[sl3].tone[tb303[sl3].selectedpattern][tbEditStep]=0;gui_action=73;teac=9;}
  120.     if (zcheckMouse(219,397,8,15)){tb303[sl3].tone[tb303[sl3].selectedpattern][tbEditStep]=1;gui_action=73;teac=9;}
  121.     if (zcheckMouse(228,422,8,15)){tb303[sl3].tone[tb303[sl3].selectedpattern][tbEditStep]=2;gui_action=73;teac=9;}
  122.     if (zcheckMouse(240,397,8,15)){tb303[sl3].tone[tb303[sl3].selectedpattern][tbEditStep]=3;gui_action=73;teac=9;}
  123.     if (zcheckMouse(249,422,8,15)){tb303[sl3].tone[tb303[sl3].selectedpattern][tbEditStep]=4;gui_action=73;teac=9;}
  124.     if (zcheckMouse(270,422,8,15)){tb303[sl3].tone[tb303[sl3].selectedpattern][tbEditStep]=5;gui_action=73;teac=9;}
  125.     if (zcheckMouse(282,397,8,15)){tb303[sl3].tone[tb303[sl3].selectedpattern][tbEditStep]=6;gui_action=73;teac=9;}
  126.     if (zcheckMouse(291,422,8,15)){tb303[sl3].tone[tb303[sl3].selectedpattern][tbEditStep]=7;gui_action=73;teac=9;}
  127.     if (zcheckMouse(303,397,8,15)){tb303[sl3].tone[tb303[sl3].selectedpattern][tbEditStep]=8;gui_action=73;teac=9;}
  128.     if (zcheckMouse(312,422,8,15)){tb303[sl3].tone[tb303[sl3].selectedpattern][tbEditStep]=9;gui_action=73;teac=9;}
  129.     if (zcheckMouse(324,397,8,15)){tb303[sl3].tone[tb303[sl3].selectedpattern][tbEditStep]=10;gui_action=73;teac=9;}
  130.     if (zcheckMouse(333,422,8,15)){tb303[sl3].tone[tb303[sl3].selectedpattern][tbEditStep]=11;gui_action=73;teac=9;}
  131.     if (zcheckMouse(354,422,8,15)){tb303[sl3].tone[tb303[sl3].selectedpattern][tbEditStep]=12;gui_action=73;teac=9;}
  132.  
  133.     // Pattern selection buttons
  134.     if (zcheckMouse(86,357,14,14)) {char gcp=(tb303[sl3].selectedpattern/8)*8;tb303[sl3].selectedpattern=gcp;gui_action=73;teac=0;}
  135.     if (zcheckMouse(101,357,14,14)){char gcp=(tb303[sl3].selectedpattern/8)*8;tb303[sl3].selectedpattern=gcp+1;gui_action=73;teac=0;}
  136.     if (zcheckMouse(117,357,14,14)){char gcp=(tb303[sl3].selectedpattern/8)*8;tb303[sl3].selectedpattern=gcp+2;gui_action=73;teac=0;}
  137.     if (zcheckMouse(132,357,14,14)){char gcp=(tb303[sl3].selectedpattern/8)*8;tb303[sl3].selectedpattern=gcp+3;gui_action=73;teac=0;}
  138.     if (zcheckMouse(86,372,14,14)) {char gcp=(tb303[sl3].selectedpattern/8)*8;tb303[sl3].selectedpattern=gcp+4;gui_action=73;teac=0;}
  139.     if (zcheckMouse(101,372,14,14)){char gcp=(tb303[sl3].selectedpattern/8)*8;tb303[sl3].selectedpattern=gcp+5;gui_action=73;teac=0;}
  140.     if (zcheckMouse(117,372,14,14)){char gcp=(tb303[sl3].selectedpattern/8)*8;tb303[sl3].selectedpattern=gcp+6;gui_action=73;teac=0;}
  141.     if (zcheckMouse(132,372,14,14)){char gcp=(tb303[sl3].selectedpattern/8)*8;tb303[sl3].selectedpattern=gcp+7;gui_action=73;teac=0;}
  142.  
  143.     // Bank selection buttons
  144.     if (zcheckMouse(88,399,14,14))  {tb303[sl3].selectedpattern=(tb303[sl3].selectedpattern-(tb303[sl3].selectedpattern/8)*8);gui_action=73;teac=0;}
  145.     if (zcheckMouse(102,399,14,14)) {tb303[sl3].selectedpattern=((tb303[sl3].selectedpattern-(tb303[sl3].selectedpattern/8)*8))+8;gui_action=73;teac=0;}
  146.     if (zcheckMouse(117,399,14,14)) {tb303[sl3].selectedpattern=((tb303[sl3].selectedpattern-(tb303[sl3].selectedpattern/8)*8))+16;gui_action=73;teac=0;}
  147.     if (zcheckMouse(132,399,14,14)) {tb303[sl3].selectedpattern=((tb303[sl3].selectedpattern-(tb303[sl3].selectedpattern/8)*8))+24;gui_action=73;teac=0;}
  148.  
  149.     if (zcheckMouse(553,405,15,8)){sl3=0;gui_action=73;teac=0;}
  150.     if (zcheckMouse(573,405,15,8)){sl3=1;gui_action=73;teac=0;}
  151.  
  152.     if (zcheckMouse(8,400,64,16))
  153.     {
  154.         for(char alter=0;alter<16;alter++)
  155.         {
  156.             tb303[sl3].tone[tb303[sl3].selectedpattern][alter]=rand()/2731;
  157.         }
  158.         teac=0;gui_action=73;
  159.     }// rand tones
  160.  
  161.     if (zcheckMouse(8,418,64,16))
  162.     {
  163.         for(char alter=0;alter<16;alter++)
  164.         {
  165.             tb303[sl3].flag[tb303[sl3].selectedpattern][alter].slide_flag=rand()/16384;
  166.             tb303[sl3].flag[tb303[sl3].selectedpattern][alter].transposeup_flag=rand()/16384;
  167.             tb303[sl3].flag[tb303[sl3].selectedpattern][alter].transposedown_flag=rand()/16384;
  168.             tb303[sl3].flag[tb303[sl3].selectedpattern][alter].accent_flag=rand()/16384;
  169.         }
  170.         teac=0;gui_action=73;
  171.     }// rand flags
  172.     
  173.     if (zcheckMouse(8,382,64,16))
  174.     {
  175.         for(char alter=0;alter<16;alter++)
  176.         {
  177.             tb303[sl3].flag[tb303[sl3].selectedpattern][alter].pause=rand()/16384;
  178.         }
  179.         teac=0;gui_action=73;
  180.     }// rand noteon
  181.  
  182.         
  183.     if (zcheckMouse(8,364,64,16))
  184.     {
  185.         for(char alter=0;alter<16;alter++)
  186.         {
  187.             tb303[sl3].tone[tb303[sl3].selectedpattern][alter]=0;
  188.             tb303[sl3].flag[tb303[sl3].selectedpattern][alter].pause=0;
  189.             tb303[sl3].flag[tb303[sl3].selectedpattern][alter].slide_flag=0;
  190.             tb303[sl3].flag[tb303[sl3].selectedpattern][alter].transposeup_flag=0;
  191.             tb303[sl3].flag[tb303[sl3].selectedpattern][alter].transposedown_flag=0;
  192.             tb303[sl3].flag[tb303[sl3].selectedpattern][alter].accent_flag=0;
  193.         }
  194.         teac=0;gui_action=73;
  195.     }// clear pat...
  196.  
  197.     if (zcheckMouse(176,408,15,8))
  198.     {
  199.         if(tb303engine[sl3].hpf)
  200.             tb303engine[sl3].hpf=false;
  201.         else
  202.             tb303engine[sl3].hpf=true;
  203.         teac=16;
  204.         gui_action=73;
  205.     }
  206.     
  207.     if (zcheckMouse(8,346,64,16))
  208.     {
  209.         for(char alter=0;alter<16;alter++)
  210.         {
  211.             tb303[sl3].tone[tb303[sl3].selectedpattern][alter]=0;
  212.             tb303[sl3].flag[tb303[sl3].selectedpattern][alter].pause=1;
  213.             tb303[sl3].flag[tb303[sl3].selectedpattern][alter].slide_flag=0;
  214.             tb303[sl3].flag[tb303[sl3].selectedpattern][alter].transposeup_flag=0;
  215.             tb303[sl3].flag[tb303[sl3].selectedpattern][alter].transposedown_flag=0;
  216.             tb303[sl3].flag[tb303[sl3].selectedpattern][alter].accent_flag=0;
  217.         }
  218.         teac=0;gui_action=73;
  219.     }// reset pat...
  220.  
  221. }
  222.  
  223.